From: Florian Müllner Date: Sat, 21 Mar 2015 18:10:04 +0000 (+0100) Subject: legacyTray: Remove pointer barrier when the tray is hidden X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~1428 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=ef6e8f5bb20d6f9587356d3433ca51624d4833b1;p=gnome-shell.git legacyTray: Remove pointer barrier when the tray is hidden https://bugzilla.gnome.org/show_bug.cgi?id=746579 --- diff --git a/js/ui/legacyTray.js b/js/ui/legacyTray.js index 40b47a02a..821dd9dc4 100644 --- a/js/ui/legacyTray.js +++ b/js/ui/legacyTray.js @@ -205,11 +205,7 @@ const LegacyTray = new Lang.Class({ this._horizontalBarrier.y2 == y2) return; - if (this._horizontalBarrier) { - this._pressureBarrier.removeBarrier(this._horizontalBarrier); - this._horizontalBarrier.destroy(); - this._horizontalBarrier = null; - } + this._unsetBarrier(); let directions = (rtl ? Meta.BarrierDirection.NEGATIVE_X : Meta.BarrierDirection.POSITIVE_X); this._horizontalBarrier = new Meta.Barrier({ display: global.display, @@ -219,6 +215,15 @@ const LegacyTray = new Lang.Class({ this._pressureBarrier.addBarrier(this._horizontalBarrier); }, + _unsetBarrier: function() { + if (this._horizontalBarrier == null) + return; + + this._pressureBarrier.removeBarrier(this._horizontalBarrier); + this._horizontalBarrier.destroy(); + this._horizontalBarrier = null; + }, + _sync: function() { // FIXME: we no longer treat tray icons as notifications let allowed = Main.sessionMode.hasNotifications; @@ -244,12 +249,14 @@ const LegacyTray = new Lang.Class({ targetSlide *= CONCEALED_VISIBLE_FRACTION; } - if (this.actor.visible) + if (this.actor.visible) { Tweener.addTween(this._slideLayout, { slideX: targetSlide, time: REVEAL_ANIMATION_TIME, transition: 'easeOutQuad' }); - else + } else { this._slideLayout.slideX = targetSlide; + this._unsetBarrier(); + } } });